#include "ConfigManager.h"
#include <iostream>

GameConfig ConfigManager::LoadConfig() {
    GameConfig config;
    
    // 设置默认值
    config.screenWidth = 640;  // 使用与downdown.cpp相同的屏幕宽度
    config.screenHeight = 760; // 使用与downdown.cpp相同的屏幕高度
    config.targetFPS = 60;     // 使用标准的60FPS
    
    // 玩家相关配置
    config.playerWidth = 30;
    config.playerHeight = 30;
    config.playerMoveSpeed = 5.0f; // 玩家移动速度
    config.gravity = 0.2f;         // 重力
    
    // 板子相关配置
    config.boardWidth = 100;       // 板子宽度
    config.boardHeight = 15;       // 板子高度
    config.boardMoveSpeed = 2.0f;  // 板子移动速度，与downdown.cpp保持一致
    config.boardMaxCount = 11;     // 板子数量，与downdown.cpp保持一致
    config.boardGenerationFrequency = 100; // 板子生成频率，与downdown.cpp保持一致
    
    // 板子类型概率配置 - 普通板50%，断裂板30%，尖刺板20%
    config.boardTypeProbabilities["NormalBoard"] = 0.5f;
    config.boardTypeProbabilities["BreakingBoard"] = 0.3f;
    config.boardTypeProbabilities["SpikyBoard"] = 0.2f; // 添加尖刺板20%概率
    
    std::cout << "使用默认配置." << std::endl;
    
    return config;
}